Attempto: Controlled Natural Language for Requirements Specifications
نویسندگان
چکیده
Writing specifications for computer programs is not easy since one has to take into account the disparate conceptual worlds of the application domain and of software development. To bridge this conceptual gap we propose controlled natural language as a declarative and application-specific specification language. Controlled natural language is a subset of natural language that can be accurately and efficiently processed by a computer, but is expressive enough to allow natural usage by non-specialists. Specifications in controlled natural language are automatically translated into Prolog clauses, hence become formal and executable. The translation uses a Definite Clause Grammar (DCG) enhanced by feature structures. Inter-text references of the specification, e.g. anaphora, are resolved with the help of Discourse Representation Theory (DRT). The generated Prolog clauses are added to a knowledge base. We have implemented the prototypical specification system Attempto that successfully processes the specification of a simple automated teller machine.
منابع مشابه
Attempto - From Specifications in Controlled Natural Language towards Executable Specifications
Deriving formal specifications from informal requirements is difficult since one has to take into account the disparate conceptual worlds of the application domain and of software development. To bridge the conceptual gap we propose controlled natural language as a textual view on formal specifications in logic. The specification language Attempto Controlled English (ACE) is a subset of natural...
متن کاملControlling Plural Ambiguities in Attempto Controlled English (ACE)
Attempto Controlled English (ACE) is a controlled natural language specifically constructed to write software specifications. ACE specifications are computer-processable and can be unambiguously translated into a first-order logic language. The current version of ACE deals only with singular phenomena. We discuss how ACE can be extended with plurality. The extension proves to be difficult in th...
متن کاملAttempto Controlled English (ACE) A Seemingly Informal Bridgehead in Formal Territory (Poster Abstract)
Attempto Controlled English (ACE) – a subset of English with a restricted grammar and a domain-specific vocabulary – allows domain specialists to interactively formulate requirements specifications in domain concepts. ACE can be accurately and efficiently processed by a computer, but is expressive enough to allow natural usage. ACE has a principled structure: simple sentences are combined by co...
متن کاملAttempto Controlled English (ACE)
Attempto Controlled English (ACE) allows domain specialists to interactively formulate requirements specifications in domain concepts. ACE can be accurately and efficiently processed by a computer, but is expressive enough to allow natural usage. The Attempto system translates specification texts in ACE into discourse representation structures and optionally into Prolog. Translated specificatio...
متن کاملAttempto: Specifications in Controlled Natural Language
Writing specifications for computer programs is not easy since one has to take into account the disparate conceptual worlds of the application domain and of software development. To bridge this conceptual gap we propose controlled natural language as a declarative and application-specific specification language. Controlled natural language is a subset of natural language that can be accurately ...
متن کامل